<!DOCTYPE html>
<html>
<head><meta charset="utf-8" />
<title>PoissonRT1mfemrate</title><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.1.10/require.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>

<style type="text/css">
/* Overrides of notebook CSS for static HTML export */
body {
  overflow: visible;
  padding: 8px;
}
div#notebook {
  overflow: visible;
  border-top: none;
}@media print {
  div.cell {
    display: block;
    page-break-inside: avoid;
  } 
  div.output_wrapper { 
    display: block;
    page-break-inside: avoid; 
  }
  div.output { 
    display: block;
    page-break-inside: avoid; 
  }
}
</style>

<!-- Custom stylesheet, it must be in the parent directory as the html file -->
<link rel="stylesheet" type="text/css" media="all" href="../doc.css" />
<link rel="stylesheet" type="text/css" media="all" href="doc.css" />

<!-- Loading mathjax macro -->
<!-- Load mathjax -->
    <script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-AMS_HTML"></script>
    <!-- MathJax configuration -->
    <script type="text/x-mathjax-config">
    MathJax.Hub.Config({
        tex2jax: {
            inlineMath: [ ['$','$'], ["\\(","\\)"] ],
            displayMath: [ ['$$','$$'], ["\\[","\\]"] ],
            processEscapes: true,
            processEnvironments: true
        },
        // Center justify equations in code and markdown cells. Elsewhere
        // we use CSS to left justify single line equations in code cells.
        displayAlign: 'center',
        "HTML-CSS": {
            styles: {'.MathJax_Display': {"margin": 0}},
            linebreaks: { automatic: true }
        }
    });
    </script>
    <!-- End of mathjax configuration --></head>
<body>
  <div tabindex="-1" id="notebook" class="border-box-sizing">
    <div class="container" id="notebook-container">

<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<h1 id="RT1-P1-Element-for-Poisson-Equation-in-2D">RT1-P1 Element for Poisson Equation in 2D<a class="anchor-link" href="#RT1-P1-Element-for-Poisson-Equation-in-2D">&#182;</a></h1>
</div>
</div>
</div>
<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<p>This example is to show the rate of convergence of the RT1-P1 mixed finite element approximation of the Poisson equation on the unit square:</p>
$$- \nabla (d \nabla) u = f \; \hbox{in } (0,1)^2$$<p>for the following boundary conditions</p>
<ul>
<li>pure Dirichlet boundary condition: $u = g_D \text{ on } \partial \Omega$.</li>
<li>Pure Neumann boundary condition: $d\nabla u\cdot n=g_N \text{ on } \partial \Omega$.</li>
<li>mixed boundary condition: $u=g_D \text{ on }\Gamma_D, \nabla u\cdot n=g_N \text{ on }\Gamma_N.$</li>
</ul>
<p>Find $(\sigma , u)$ in $H_{g_N,\Gamma_N}(div,\Omega)\times L^2(\Omega)$ s.t.</p>
$$ (d^{-1}\sigma,\tau) + (div \tau, u)  = \langle \tau \cdot n, g_D \rangle_{\Gamma_D} \quad \forall \tau \in H_{0,\Gamma_N}(div,\Omega)$$$$ (div \sigma, v)                =  -(f,v) \quad \forall v \in L^2(\Omega) $$<p>where</p>
<p>$$H_{g,\Gamma}(div,\Omega) = \{\sigma \in H(div,\Omega); \sigma \cdot n = g  \text{ on } \Gamma \subset \partial\Omega \}.$$</p>
<p>The unknown $\sigma = d\nabla u$ is approximated using the incomplete P2 Raviart-Thomas element (RT1) and $u$ by piecewise constant element (P1). The expected convergence rate is 2nd order in H(div) and L2 norm for $\sigma$ and L2 norm of $u$.</p>
<p><strong>References</strong>
See page 12, Table 9.2. Arnold, Douglas N. and Falk, Richard S. and Winther, Ragnar. Geometric decompositions and local bases for spaces of finite element differential forms. Comput. Methods Appl. Mech. Engrg. 198():1660--1672, 2009.</p>
<p><strong>Subroutines</strong>:</p>

<pre><code>- PoissonRT1
- squarePoissonRT1
- mfemPoisson
- PoissonRT1mfemrate

</code></pre>
<p>The method is implemented in <code>PoissonRT1</code> subroutine and tested in <code>squarePoissonRT1</code>. Together with other elements (RT0, BDM1), <code>mfemPoisson</code> provides a concise interface to solve Poisson equation in mixed formulation. The RT0-P0 element is tested in <code>PoissonRT1mfemrate</code>. This doc is based on <code>PoissonRT1mfemrate</code>.</p>

</div>
</div>
</div>
<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<h2 id="RT1-Incomplete-Quadratic-H(div)-Element-in-2D">RT1 Incomplete Quadratic H(div) Element in 2D<a class="anchor-link" href="#RT1-Incomplete-Quadratic-H(div)-Element-in-2D">&#182;</a></h2><p>We explain degree of freedoms and basis functions for RT1 element on a triangle.</p>
<h3 id="Asecond-orientation">Asecond orientation<a class="anchor-link" href="#Asecond-orientation">&#182;</a></h3><p>The dofs and basis depends on the orientation of the mesh. We shall use the asecond orientation, i.e., <code>elem(t,1)&lt; elem(t,2)&lt; elem(t,3)</code> not the positive orientation. Given an <code>elem</code>, the asecond orientation can be constructed by</p>

<pre><code>    [elem,bdFlag] = sortelem(elem,bdFlag);  % ascend ordering

</code></pre>
<p>Note that <code>bdFlag</code> should be sorted as well.</p>
<p>The local edge is also asecond <code>[2 3; 1 3; 1 2]</code> so that the local orientation is consistent with the global one and thus no need to deal with the sign difference when the positive oritentation is used. Read <a href="../mesh/scdoc.html">Simplicial complex in two dimensions</a> for more discussion of indexing, ordering and orientation.</p>

</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[2]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-matlab"><pre><span></span><span class="n">node</span> <span class="p">=</span> <span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">0</span><span class="p">;</span> <span class="mi">1</span><span class="p">,</span><span class="mi">1</span><span class="p">;</span> <span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">];</span>
<span class="n">elem</span> <span class="p">=</span> <span class="p">[</span><span class="mi">1</span> <span class="mi">2</span> <span class="mi">3</span><span class="p">];</span>
<span class="n">edge</span> <span class="p">=</span> <span class="p">[</span><span class="mi">2</span> <span class="mi">3</span><span class="p">;</span> <span class="mi">1</span> <span class="mi">3</span><span class="p">;</span> <span class="mi">1</span> <span class="mi">2</span><span class="p">];</span>
<span class="n">figure</span><span class="p">;</span>
<span class="n">subplot</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">1</span><span class="p">)</span>
<span class="n">showmesh</span><span class="p">(</span><span class="n">node</span><span class="p">,</span><span class="n">elem</span><span class="p">);</span>
<span class="n">findnode</span><span class="p">(</span><span class="n">node</span><span class="p">);</span>
<span class="n">findedge</span><span class="p">(</span><span class="n">node</span><span class="p">,</span><span class="n">edge</span><span class="p">,</span><span class="s">&#39;all&#39;</span><span class="p">,</span><span class="s">&#39;rotvec&#39;</span><span class="p">);</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area">

<div class="prompt"></div>




<div class="output_png output_subarea ">
<img src="
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
vH+qtnuK2+0uLCwMebcCAIgxgmQj/upyf3W5/jh9zab0NZvMnQcABuKiBgCAFAgSAEAKBAkAIAWC
BACQAkECAEiBIAEApECQAABSIEgAACkQJACAFAgSAEAKBAkAIAWCBACQAkECAEiBIAEApECQAABS
IEgAACkQJACAFAgSAEAKBAkAIAWCBACQAkECAEiBIAEApECQAABSIEgAACkkmT0AYqGn3depVnf+
rTq45LPmuuS/ZSZlzBg/t8DEwQAgKKG/v9/sGWA4X+l13c31Q5enudZceltF7OcBgKF4yc4W0tds
CrmcwyMA8iBItpA8NTPk8ovm5sd4EgAIhyDZQnJGZsj2JGeEDhUAxB5Bsq801xqzRwCALxAkuxh6
GokTSACkQpDsYuhpJE4gAZAKQbKLoaeROIEEQCoEyaY4gQRANgTJRi79twr9hbvkqZlpRQQJgFy4
U4O99LT7/NXl3J0BgIQIEgBACrxkBwCQAkECAEiBIAEApECQAABSIEgAACkQJACAFAgSAEAKBAkA
IAWCBACQAkECAEiBIAEApECQAABSIEgAACkQJACAFAgSAEAKBAkAIAWCBACQAkECAEiBIAEApECQ
AABSIEgAACkQJACAFAgSAEAKBAkAIAWCBACQAkECAEiBIAEApECQAABSIEgAACkQJACAFAgSAEAK
BAkAIAWCBACQAkECAEiBIAEApECQAABSIEgAACkQJACAFAgSAEAKBAkAIAWCBACQAkECAEiBIAEA
pECQAABSIEgAACkQJACAFAgSAEAKBAkAIAWCBACQAkECAEiBIAEApECQAABSIEgAACkQJACAFAgS
AEAKBAkAIAWCBACQAkECAEiBIAEApECQAABSIEgAACkQJACAFAgSAEAKBAkAIAWCBACQAkECAEiB
IAEApECQAABSIEgAACkQJACAFAgSAEAKBAkAIAWCBACQAkECAEiBIAEApECQAABSIEgAACkQJACA
FAgSAEAKBAkAIAWCBACQAkECAEiBIAEApECQAABSIEgAACkQJACAFAgSAEAKBAkAIAWCBACQAkEC
AEiBIAEApECQAABSIEgAACkQJACAFAgSAEAKBAkAIIX/B0sy0uxRZTJ0AAAAAElFTkSuQmCC
"
>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<h3 id="Local-bases-of-RT1-element">Local bases of RT1 element<a class="anchor-link" href="#Local-bases-of-RT1-element">&#182;</a></h3><p>Suppose <code>[i,j]</code> is the k-th edge. The two dimensional curl is a rotated graident defined as $\nabla^{\bot} f = (-\partial_y f, \partial _x f).$ For RT0, the basis of this edge along with its divergence are given by</p>
$$ \phi_k = \lambda_i \nabla^{\bot} \lambda_j - \lambda_j \nabla^{\bot} \lambda_i. $$<p>For BDM1, one more basis is added on this edge</p>
$$ \psi_k = \lambda_i \nabla^{\bot} \lambda_j + \lambda_j \nabla^{\bot} \lambda_i. $$<p>For RT1, two more bases are added to the triangle. Suppose $i,j,k$ are the vertices of the triangle and $i&lt;j&lt;k$. The two bases are</p>
$$ \chi_1 = \lambda_j\phi _{ik} = \lambda_j(\lambda_i\nabla^{\bot} \lambda_k -
\lambda_k\nabla^{\bot}\lambda_i),\quad
   \chi_2 = \lambda_k\phi _{ij} = \lambda_k(\lambda_i\nabla^{\bot} \lambda_j -
\lambda_j\nabla^{\bot}\lambda_i).$$<p>Inside one triangle, we order the local bases in the following way:</p>
$$\{\phi_1,~\,\phi_2,~\,\phi_3,~\,\psi_1,~\,\psi_2,~\, \psi_3, ~\, \chi_1, ~\, \chi_2\}.$$<p>Note that $RT_0 \subset BDM_1 \subset RT_1$.</p>
<p>The first 3 dual bases are the line integral over orientated edges</p>
$$d_i^{\phi}(u) = \int_{e_i} u \cdot n_i \, ds,$$<p>and the second 3 dual bases are</p>
$$d_{ij}^{\psi}(u) = 3 \int_{e_{i, j}} \boldsymbol{u} \cdot \boldsymbol{n}_{i, j}\left(\lambda_{i}-\lambda_{j}\right) \, ds,$$<p>where $n_i = t_i^{\bot}$ is the rotation of the unit tangential vector of $e_i$ by $90^{\deg}$ counterclockwise. Note that both the bases and the dual bases depend on the orientation of the edge not necessiliarly couterclockwise.</p>
<p>It is straightforward to verify the "orthogonality":
$$d^{\phi}(\psi) = 0, \quad d^{\psi}(\phi) = 0, \quad d_i^{\phi}(\phi_j) = \delta_{ij}, \quad  d_i^{\psi}(\psi_j) = \delta_{ij}.$$</p>
<p>But it is diffcult to find the "orthogonal" dual basis for $\chi_1,\chi_2$. One choice is $$l_f^1(u) := \int_{T} u\cdot n_{ik}\, dx, \quad l_f^2(u) := \int_{T} u\cdot n_{ij}\, dx.$$ Then $l_f(\phi) \neq 0, l_f(\psi) \neq 0$. The good news is $d_e^{\phi}(\chi) = d_e^{\psi}(\chi) = 0$ as $\lambda_k\phi _{ij}\cdot n_e = 0$ either $\lambda_k|e = 0$ or $\phi_{ij}\cdot n_e = 0$.</p>
<p>We need to solve a small system to get the coefficients for bases $\chi$. Fortunately this has been done in quadratic H(curl) element. More precisely, suppose $$u=\sum \alpha_{i} \phi_{i}+\sum \beta_{j} \psi_{j}+\sum \gamma_{k} x_{k}$$</p>
<p>The interpolation is implemented in <code>faceinterpolate</code>.</p>

</div>
</div>
</div>
<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<h3 id="Local-to-global-index-map">Local to global index map<a class="anchor-link" href="#Local-to-global-index-map">&#182;</a></h3><p>Three local edges are <code>locEdge = [2 3; 1 3; 1 2]</code>. The pointer from the local to global index can be constructured by</p>

<pre><code>[elem2edge,edge] = dofedge(elem);</code></pre>

</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[3]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-matlab"><pre><span></span><span class="p">[</span><span class="n">node</span><span class="p">,</span><span class="n">elem</span><span class="p">]</span> <span class="p">=</span> <span class="n">squaremesh</span><span class="p">([</span><span class="mi">0</span> <span class="mi">1</span> <span class="mi">0</span> <span class="mi">1</span><span class="p">],</span> <span class="mf">0.5</span><span class="p">);</span>
<span class="n">bdFlag</span> <span class="p">=</span> <span class="n">setboundary</span><span class="p">(</span><span class="n">node</span><span class="p">,</span><span class="n">elem</span><span class="p">,</span><span class="s">&#39;Dirichlet&#39;</span><span class="p">);</span>
<span class="p">[</span><span class="n">elem</span><span class="p">,</span><span class="n">bdFlag</span><span class="p">]</span> <span class="p">=</span> <span class="n">sortelem</span><span class="p">(</span><span class="n">elem</span><span class="p">,</span><span class="n">bdFlag</span><span class="p">);</span>
<span class="n">showmesh</span><span class="p">(</span><span class="n">node</span><span class="p">,</span><span class="n">elem</span><span class="p">);</span>
<span class="n">findnode</span><span class="p">(</span><span class="n">node</span><span class="p">);</span>
<span class="n">findelem</span><span class="p">(</span><span class="n">node</span><span class="p">,</span><span class="n">elem</span><span class="p">);</span>
<span class="p">[</span><span class="n">elem2edge</span><span class="p">,</span><span class="n">edge</span><span class="p">]</span> <span class="p">=</span> <span class="n">dofedge</span><span class="p">(</span><span class="n">elem</span><span class="p">);</span>
<span class="n">findedge</span><span class="p">(</span><span class="n">node</span><span class="p">,</span><span class="n">edge</span><span class="p">,</span><span class="s">&#39;all&#39;</span><span class="p">,</span><span class="s">&#39;rotvec&#39;</span><span class="p">);</span>
<span class="n">display</span><span class="p">(</span><span class="n">elem2edge</span><span class="p">);</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area">

<div class="prompt"></div>


<div class="output_subarea output_stream output_stdout output_text">
<pre>
elem2edge =

  8�3 uint32 matrix

    8    3    2
   11    6    5
   15   10    9
   16   13   12
    5    3    1
    7    6    4
   12   10    8
   14   13   11

</pre>
</div>
</div>

<div class="output_area">

<div class="prompt"></div>




<div class="output_png output_subarea ">
<img src="
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
AAAASUVORK5CYII=
"
>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<h2 id="Assembling-the-matrix-equation">Assembling the matrix equation<a class="anchor-link" href="#Assembling-the-matrix-equation">&#182;</a></h2><p>We discuss several issues in the assembling.</p>
<h3 id="Mass-matrix">Mass matrix<a class="anchor-link" href="#Mass-matrix">&#182;</a></h3><p>The mass matrix can be computed by</p>

<pre><code>M = getmassmatvec(elem2edge,area,Dlambda,'RT1');</code></pre>

</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[&nbsp;]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-matlab"><pre><span></span>
</pre></div>

</div>
</div>
</div>

</div>
    </div>
  </div>
</body>

 


</html>
